home *** CD-ROM | disk | FTP | other *** search
/ BCI NET 2 / BCI NET 2.iso / archives / programming / gui / bgui11b.lha / include / libraries / bgui.i < prev   
Encoding:
Text File  |  1995-01-03  |  44.5 KB  |  1,234 lines

  1.     IFND        LIBRARIES_BGUI_I
  2. LIBRARIES_BGUI_I        SET     1
  3. **
  4. **      $VER: libraries/bgui.i 38.12 (3.1.95)
  5. **      ASM header for the bgui.library.
  6. **
  7. **      bgui.library structures and constants.
  8. **
  9. **      (C) Copyright 1993-1995 Jaba Development.
  10. **      (C) Copyright 1993-1995 Jan van den Baard.
  11. **      All Rights Reserved.
  12. **
  13.  
  14.         IFND    __m68
  15.  
  16.         IFND    EXEC_TYPES_I
  17.         INCLUDE "exec/types.i"
  18.         ENDC
  19.  
  20.         IFND    INTUITION_CLASSES_I
  21.         INCLUDE "intuition/classes.i"
  22.         ENDC
  23.  
  24.         IFND    INTUITION_CLASSUSR_I
  25.         INCLUDE "intuition/classusr.i"
  26.         ENDC
  27.  
  28.         IFND    INTUITION_IMAGECLASS_I
  29.         INCLUDE "intuition/imageclass.i"
  30.         ENDC
  31.  
  32.         IFND    INTUITION_GADGETCLASS_I
  33.         INCLUDE "intuition/gadgetclass.i"
  34.         ENDC
  35.  
  36.         IFND    INTUITION_CGHOOKS_I
  37.         INCLUDE "intuition/cghooks.i"
  38.         ENDC
  39.  
  40.         IFND    LIBRARIES_COMMODITIES_I
  41.         INCLUDE "libraries/commodities.i"
  42.         ENDC
  43.  
  44.         IFND    LIBRARIES_GADTOOLS_I
  45.         INCLUDE "libraries/gadtools.i"
  46.         ENDC
  47.  
  48.         IFND UTILITY_TAGITEM_I
  49.         INCLUDE "utility/tagitem.i"
  50.         ENDC
  51.  
  52.         ENDC    * _m68
  53.  
  54. *****************************************************************************
  55. **
  56. **      The attribute definitions in this header are all followed by
  57. **      a small comment. This comment can contain the following things:
  58. **
  59. **      I        - Attribute can be set with OM_NEW
  60. **      S        - Attribute can be set with OM_SET
  61. **      G        - Attribute can be read with OM_GET
  62. **      N        - Setting this attribute triggers a notification.
  63. **      U        - Attribute can be set with OM_UPDATE.
  64. **      PRIVATE! - Like it says: Private. Do not use this attribute.
  65. **
  66.  
  67. *****************************************************************************
  68. **
  69. **      Miscellanious library definitions.
  70. **
  71. BGUINAME        MACRO
  72.                 DC.B    'bgui.library',0
  73.                 ENDM
  74.  
  75. BGUIVERSION     EQU     37
  76.  
  77. * Added to avoid problems with multiple defines.
  78.  
  79.    STRUCTURE    bguiMethodID,0
  80.         ULONG   bmi_MethodID
  81.         LABEL   MethodID_SIZEOF
  82.  
  83. ******************************************************************************
  84. **
  85. **      BGUI_GetClassPtr() and BGUI_NewObjectA() class ID's.
  86. **
  87. BGUI_LABEL_IMAGE        EQU     0
  88. BGUI_FRAME_IMAGE        EQU     1
  89. BGUI_VECTOR_IMAGE       EQU     2
  90. ** 3 until 10 reserved. **
  91. BGUI_BASE_GADGET        EQU     11
  92. BGUI_GROUP_GADGET       EQU     12
  93. BGUI_BUTTON_GADGET      EQU     13
  94. BGUI_CYCLE_GADGET       EQU     14
  95. BGUI_CHECKBOX_GADGET    EQU     15
  96. BGUI_INFO_GADGET        EQU     16
  97. BGUI_STRING_GADGET      EQU     17
  98. BGUI_PROP_GADGET        EQU     18
  99. BGUI_INDICATOR_GADGET   EQU     19
  100. ** 20 is reserved. **
  101. BGUI_PROGRESS_GADGET    EQU     21
  102. BGUI_SLIDER_GADGET      EQU     22
  103. BGUI_LISTVIEW_GADGET    EQU     23
  104. BGUI_MX_GADGET          EQU     24
  105. BGUI_PAGE_GADGET        EQU     25
  106. BGUI_EXTERNAL_GADGET    EQU     26
  107. BGUI_SEPERATOR_GADGET   EQU     27
  108. ** 28 until 39 reserved. **
  109. BGUI_WINDOW_OBJECT      EQU     40
  110. BGUI_FILEREQ_OBJECT     EQU     41
  111. BGUI_COMMODITY_OBJECT   EQU     42
  112.  
  113. ******************************************************************************
  114. **
  115. **      BGUI requester definitions.
  116. **
  117.    STRUCTURE    bguiRequest,0
  118.         ULONG   br_Flags         ; See below.
  119.         APTR    br_Title         ; Requester title.
  120.         APTR    br_GadgetFormat  ; Gadget labels.
  121.         APTR    br_TextFormat    ; Body text format.
  122.         UWORD   br_ReqPos        ; Requester position.
  123.         APTR    br_TextAttr      ; Requester font.
  124.         UBYTE   br_Underscore    ; Underscore indicator.
  125.         STRUCT  br_Reserved0,3   ; Set to 0!
  126.         APTR    br_Screen        ; Requester screen.
  127.         STRUCT  br_Reserved1,5*4 ; Set to 0!
  128.    LABEL bguiRequest_SIZEOF
  129.  
  130. BREQF_CENTERWINDOW      EQU     $0001   ; Center requester on the window.
  131. BREQF_LOCKWINDOW        EQU     $0002   ; Lock the parent window.
  132. BREQF_NO_PATTERN        EQU     $0004   ; Don't use back-fill pattern.
  133. BREQF_XEN_BUTTONS       EQU     $0008   ; Use XEN style buttons.
  134. BREQF_AUTO_ASPECT       EQU     $0010   ; Aspect ratio dependant look.
  135.  
  136. ******************************************************************************
  137. **
  138. **      Tag and method bases.
  139. **
  140. BGUI_TB         EQU     TAG_USER+$000F0000
  141. BGUI_MB         EQU     $000F0000
  142.  
  143. ******************************************************************************
  144. **
  145. **      "frameclass" - BOOPSI framing image.
  146. **
  147. FRM_Type                EQU     BGUI_TB+1       ; ISG--
  148. FRM_CustomHook          EQU     BGUI_TB+2       ; ISG--
  149. FRM_BackFillHook        EQU     BGUI_TB+3       ; ISG--
  150. FRM_Title               EQU     BGUI_TB+4       ; ISG--
  151. FRM_TextAttr            EQU     BGUI_TB+5       ; ISG--
  152. FRM_Flags               EQU     BGUI_TB+6       ; ISG--
  153. FRM_FrameWidth          EQU     BGUI_TB+7       ; --G--
  154. FRM_FrameHeight         EQU     BGUI_TB+8       ; --G--
  155. FRM_BackFill            EQU     BGUI_TB+9       ; ISG--
  156. FRM_EdgesOnly           EQU     BGUI_TB+10      ; ISG--
  157. FRM_Recessed            EQU     BGUI_TB+11      ; ISG--
  158. FRM_CenterTitle         EQU     BGUI_TB+12      ; ISG--
  159. FRM_HighlightTitle      EQU     BGUI_TB+13      ; ISG--
  160. FRM_ThinFrame           EQU     BGUI_TB+14      ; ISG--
  161.  
  162. ** BGUI_TB+15 until BGUI_TB+80 reserved
  163.  
  164. ** Back fill types **
  165. STANDARD_FILL           EQU     0
  166. SHINE_RASTER            EQU     1
  167. SHADOW_RASTER           EQU     2
  168. SHINE_SHADOW_RASTER     EQU     3
  169. FILL_RASTER             EQU     4
  170. SHINE_FILL_RASTER       EQU     5
  171. SHADOW_FILL_RASTER      EQU     6
  172. SHINE_BLOCK             EQU     7
  173. SHADOW_BLOCK            EQU     8
  174.  
  175. ** Flags **
  176. FRF_EDGES_ONLY          EQU     $0001
  177. FRF_RECESSED            EQU     $0002
  178. FRF_CENTER_TITLE        EQU     $0004
  179. FRF_HIGHLIGHT_TITLE     EQU     $0008
  180. FRF_THIN_FRAME          EQU     $0010
  181.  
  182. ** Frame types **
  183. FRTYPE_CUSTOM           EQU     0
  184. FRTYPE_BUTTON           EQU     1
  185. FRTYPE_RIDGE            EQU     2
  186. FRTYPE_DROPBOX          EQU     3
  187. FRTYPE_NEXT             EQU     4
  188. FRTYPE_RADIOBUTTON      EQU     5
  189. FRTYPE_XEN_BUTTON       EQU     6
  190.  
  191. **
  192. **      FRM_RENDER:
  193. **
  194. **      The message packet sent to both the FRM_CustomHook
  195. **      and FRM_BackFillHook routines. Note that this
  196. **      structure is READ-ONLY!
  197. **
  198. **      The hook is called as follows:
  199. **
  200. **              lea     hook,a0         * 'STRUCTURE Hook' pointer
  201. **              lea     image_object,a2 * Object pointer
  202. **              lea     fdraw,a1        * FrameDrawMsg pointer
  203. **              jsr     hookFunc        * Call hook function
  204. **              tst.l   d0              * return code in D0
  205. **
  206. FRM_RENDER      EQU     1       ; Render yourself
  207.  
  208.    STRUCTURE    FrameDrawMsg,0
  209.         ULONG   fdm_MethodID    ; FRM_RENDER
  210.         APTR    fdm_RPort       ; RastPort ready for rendering
  211.         APTR    fdm_DrawInfo    ; All you need to render
  212.         APTR    fdm_Bounds      ; Rendering bounds.
  213.         UWORD   fdm_State       ; See "intuition/imageclass.h"
  214.    LABEL FrameDrawMsg_SIZEOF
  215.  
  216. **
  217. **      FRM_THICKNESS:
  218. **
  219. **      The message packet sent to the FRM_Custom hook.
  220. **      This structure is READ-ONLY!
  221. **
  222. **      The hook is called as follows:
  223. **
  224. **              lea     hook,a0         * 'STRUCTURE Hook' pointer
  225. **              lea     image_object,a2 * Object pointer
  226. **              lea     thick,a1        * ThicknessMsg pointer
  227. **              jsr     hookFunc        * Call hook function
  228. **              tst.l   d0              * return code in D0
  229. **
  230. FRM_THICKNESS   EQU     2       ; Give the frame thickness.
  231.  
  232.    STRUCTURE    ThicknessMsg,0
  233.         ULONG   tm_MethodID             ; FRM_THICKNESS
  234.         UBYTE   tm_ThicknessHorizontal  ; Storage for horizontal
  235.         UBYTE   tm_ThicknessVertical    ; Storage for vertical
  236.         WORD    tm_Thin                 ; Added in V38!
  237.    LABEL        ThicknessMsg_SIZEOF
  238.  
  239. ** Possible hook return codes. **
  240. FRC_OK          EQU     0       ; OK
  241. FRC_UNKNOWN     EQU     1       ; Unknow method
  242.  
  243. ******************************************************************************
  244. **
  245. **      "labelclass" - BOOPSI labeling image.
  246. **
  247. LAB_TextAttr    EQU     BGUI_TB+81      ; ISG--
  248. LAB_Style       EQU     BGUI_TB+82      ; ISG--
  249. LAB_Underscore  EQU     BGUI_TB+83      ; ISG--
  250. LAB_Place       EQU     BGUI_TB+84      ; ISG--
  251. LAB_Label       EQU     BGUI_TB+85      ; ISG--
  252. LAB_Flags       EQU     BGUI_TB+86      ; ISG--
  253. LAB_Highlight   EQU     BGUI_TB+87      ; ISG--
  254. LAB_HighUScore  EQU     BGUI_TB+88      ; ISG--
  255.  
  256. ** BGUI_TB+89 until BGUI_TB+160 reserved
  257.  
  258. ** Flags **
  259. LABF_HIGHLIGHT          EQU     $0001   ; Highlight label
  260. LABF_HIGH_USCORE        EQU     $0002   ; Highlight underscoring
  261.  
  262. ** Label placement **
  263. PLACE_IN        EQU     0
  264. PLACE_LEFT      EQU     1
  265. PLACE_RIGHT     EQU     2
  266. PLACE_ABOVE     EQU     3
  267. PLACE_BELOW     EQU     4
  268.  
  269. ** New methods **
  270. **
  271. **      The IM_EXTENT method is used to find out how many
  272. **      pixels the label extents the relative hitbox in
  273. **      either direction. Normally this method is called
  274. **      by the baseclass.
  275. **
  276. IM_EXTENT       EQU     BGUI_MB+1
  277.  
  278.    STRUCTURE    impExtent,MethodID_SIZEOF  ; IM_EXTENT
  279.         APTR    impex_RPort             ; RastPort
  280.         APTR    impex_Extent            ; Storage for extentions.
  281.         UWORD   impex_LabelSizeWidth    ; Storage width in pixels
  282.         UWORD   impex_LabelSizeHeight   ; Storage height in pixels
  283.         UWORD   impex_Flags             ; See below.
  284.    LABEL        impExtent_SIZEOF
  285.  
  286. EXTF_MAXIMUM    EQU     $0001   ; Request maximum extensions.
  287.  
  288. ** BGUI_MB+2 until BGUI_MB+40 reserved
  289.  
  290. ******************************************************************************
  291. **
  292. **      "vectorclass" - BOOPSI scalable vector image.
  293. **
  294. **      Based on an idea found in the ObjectiveGadTools.library
  295. **      by Davide Massarenti.
  296. **
  297. VIT_VectorArray EQU     BGUI_TB+161     ; ISG--
  298. VIT_BuiltIn     EQU     BGUI_TB+162     ; ISG--
  299. VIT_Pen         EQU     BGUI_TB+163     ; ISG--
  300. VIT_DriPen      EQU     BGUI_TB+164     ; ISG--
  301.  
  302. ** BGUI_TB+165 until BGUI_TB+240 reserved.
  303.  
  304. **
  305. **      Command structure which can contain
  306. **      coordinates, data and command flags.
  307. **
  308.    STRUCTURE    VectorItem,0
  309.         WORD    vi_x            ; X coordinate or data
  310.         WORD    vi_y            ; Y coordinate
  311.         ULONG   vi_Flags        ; See below
  312.    LABEL        VectorItem_SIZEOF
  313.  
  314. ** Flags **
  315. VIF_MOVE        EQU     $00000001       ; Move to vc_x, vc_y
  316. VIF_DRAW        EQU     $00000002       ; Draw to vc_x, vc_y
  317. VIF_AREASTART   EQU     $00000004       ; Start AreaFill at vc_x, vc_y
  318. VIF_AREAEND     EQU     $00000008       ; End AreaFill at vc_x, vc_y
  319. VIF_XRELRIGHT   EQU     $00000010       ; vc_x relative to right edge
  320. VIF_YRELBOTTOM  EQU     $00000020       ; vc_y relative to bottom edge
  321. VIF_SHADOWPEN   EQU     $00000040       ; switch to SHADOWPEN, Move/Draw
  322. VIF_SHINEPEN    EQU     $00000080       ; switch to SHINEPEN, Move/Draw
  323. VIF_FILLPEN     EQU     $00000100       ; switch to FILLPEN, Move/Draw
  324. VIF_TEXTPEN     EQU     $00000200       ; switch to TEXTPEN, Move/Draw
  325. VIF_COLOR       EQU     $00000400       ; switch to color in vc_x
  326. VIF_LASTITEM    EQU     $00000800       ; last element of the element list
  327. VIF_SCALE       EQU     $00001000       ; X & Y are design width & height
  328. VIF_DRIPEN      EQU     $00002000       ; switch to dripen vc_x
  329. VIF_AOLPEN      EQU     $00004000       ; set area outline pen vc_x
  330. VIF_AOLDRIPEN   EQU     $00008000       ; set area outline dripen vc_x
  331. VIF_ENDOPEN     EQU     $00010000       ; end area outline pen
  332.  
  333. ** Built-in images. **
  334. BUILTIN_GETPATH         EQU     1
  335. BUILTIN_GETFILE         EQU     2
  336. BUILTIN_CHECKMARK       EQU     3
  337. BUILTIN_POPUP           EQU     4
  338. BUILTIN_ARROW_UP        EQU     5
  339. BUILTIN_ARROW_DOWN      EQU     6
  340. BUILTIN_ARROW_LEFT      EQU     7
  341. BUILTIN_ARROW_RIGHT     EQU     8
  342.  
  343. ** Design width and heights of the built-in images. **
  344. GETPATH_WIDTH           EQU     20
  345. GETPATH_HEIGHT          EQU     14
  346. GETFILE_WIDTH           EQU     20
  347. GETFILE_HEIGHT          EQU     14
  348. CHECKMARK_WIDTH         EQU     26
  349. CHECKMARK_HEIGHT        EQU     11
  350. POPUP_WIDTH             EQU     15
  351. POPUP_HEIGHT            EQU     13
  352. ARROW_UP_WIDTH          EQU     16
  353. ARROW_UP_HEIGHT         EQU     9
  354. ARROW_DOWN_WIDTH        EQU     16
  355. ARROW_DOWN_HEIGHT       EQU     9
  356. ARROW_LEFT_WIDTH        EQU     10
  357. ARROW_LEFT_HEIGHT       EQU     12
  358. ARROW_RIGHT_WIDTH       EQU     10
  359. ARROW_RIGHT_HEIGHT      EQU     12
  360.  
  361. ******************************************************************************
  362. **
  363. **      "baseclass" - BOOPSI base gadget.
  364. **
  365. **      This is a very important BGUI gadget class. All other gadget classes
  366. **      are sub-classed from this class. It will handle stuff like online
  367. **      help, notification, labels and frames etc. If you want to write a
  368. **      gadget class for BGUI be sure to subclass it from this class. That
  369. **      way your class will automatically inherit the same features.
  370. **
  371. BT_HelpFile     EQU     BGUI_TB+241     ; IS---
  372. BT_HelpNode     EQU     BGUI_TB+242     ; IS---
  373. BT_HelpLine     EQU     BGUI_TB+243     ; IS---
  374. BT_Inhibit      EQU     BGUI_TB+244     ; PRIVATE!
  375. BT_HitBox       EQU     BGUI_TB+245     ; --G--
  376. BT_LabelObject  EQU     BGUI_TB+246     ; -SG--
  377. BT_FrameObject  EQU     BGUI_TB+247     ; -SG--
  378. BT_TextAttr     EQU     BGUI_TB+248     ; -S---
  379. BT_NoRecessed   EQU     BGUI_TB+249     ; -S---
  380. BT_LabelClick   EQU     BGUI_TB+250     ; IS---
  381. BT_HelpText     EQU     BGUI_TB+251     ; IS---
  382.  
  383. ** BGUI_TB+252 until BGUI_TB+320 reserved.
  384.  
  385. ** New methods **
  386. BASE_ADDMAP     EQU     BGUI_MB+41
  387.  
  388. ** Add an object to the maplist notification list. **
  389.    STRUCTURE    bmAddMap,MethodID_SIZEOF
  390.         APTR    bam_Object
  391.         APTR    bam_MapList
  392.    LABEL        bmAddMap_SIZEOF
  393.  
  394. BASE_ADDCONDITIONAL     EQU     BGUI_MB+42
  395.  
  396. ** Add an object to the conditional notification list. **
  397.    STRUCTURE    bmAddConditional,MethodID_SIZEOF
  398.         APTR    bac_Object
  399.         STRUCT  bac_Condition,ti_SIZEOF
  400.         STRUCT  bac_TRUE,ti_SIZEOF
  401.         STRUCT  bac_FALSE,ti_SIZEOF
  402.    LABEL        bmAddConditional_SIZEOF
  403.  
  404. BASE_ADDMETHOD  EQU     BGUI_MB+43
  405.  
  406. ** Add an object to the method notification list. **
  407.    STRUCTURE    bmAddMethod,MethodID_SIZEOF
  408.         APTR    bamtd_Object
  409.         ULONG   bamtd_Flags
  410.         ULONG   bamtd_Size
  411.         ULONG   bamtd_MethodID
  412.    LABEL        bmAddMethod_SIZEOF
  413.  
  414. BAMF_NO_GINFO           EQU     $0001   ; Do not send GadgetInfo.
  415. BAMF_NO_INTERIM         EQU     $0002   ; Skip interim messages.
  416.  
  417. BASE_REMMAP             EQU     BGUI_MB+44
  418. BASE_REMCONDITIONAL     EQU     BGUI_MB+45
  419. BASE_REMMETHOD          EQU     BGUI_MB+46
  420.  
  421. ** Remove an object from a notification list. **
  422.    STRUCTURE    bmRemove,MethodID_SIZEOF
  423.         APTR    bar_Object
  424.    LABEL        bmRemove_SIZEOF
  425.  
  426. BASE_SHOWHELP           EQU     BGUI_MB+47
  427.  
  428. ** Show attached online-help. **
  429.    STRUCTURE    bmShowHelp,MethodID_SIZEOF
  430.         APTR    bsh_Window
  431.         APTR    bsh_Requester
  432.         WORD    bsh_MouseX
  433.         WORD    bsh_MouseY
  434.    LABEL        bmShowHelp_SIZEOF
  435.  
  436. BMHELP_OK       EQU     0       ; OK, no problems.
  437. BMHELP_NOT_ME   EQU     1       ; Mouse not over the object.
  438. BMHELP_FAILURE  EQU     2       ; Showing failed.
  439.  
  440. **
  441. **      The following three methods are used internally to
  442. **      perform infinite-loop checking. Do not use them.
  443. **
  444. BASE_SETLOOP    EQU     BGUI_MB+48
  445. BASE_CLEARLOOP  EQU     BGUI_MB+49
  446. BASE_CHECKLOOP  EQU     BGUI_MB+50
  447.  
  448. ** PRIVATE! Hands off! **
  449. BASE_LEFTEXT    EQU     BGUI_MB+51
  450.  
  451.    STRUCTURE    bmLeftExt,MethodID_SIZEOF
  452.         APTR    bmle_RPort
  453.         UWORD   bmle_Extention
  454.    LABEL        bmLeftExt_SIZEOF
  455.  
  456. BASE_ADDHOOK    EQU     BGUI_MB+52
  457.  
  458. ** Add a hook to the hook-notification list. **
  459.    STRUCTURE    bmAddHook,MethodID_SIZEOF
  460.         APTR    bah_Hook
  461.    LABEL        bahAddHook_SIZEOF
  462.  
  463. ** Remove a hook from the hook-notification list.
  464. BASE_REMHOOK    EQU     BGUI_MB+53
  465.  
  466. ** BGUI_MB+54 until BGUI_MB+80 reserved.
  467.  
  468. ******************************************************************************
  469. **
  470. **      "groupclass" - BOOPSI group gadget.
  471. **
  472. **      This class is the actual bgui.library layout engine. It will layout
  473. **      all members in a specific area. Two group types are available,
  474. **      horizontal and vertical groups.
  475. **
  476. GROUP_Style             EQU     BGUI_TB+321     ; I----
  477. GROUP_Spacing           EQU     BGUI_TB+322     ; I----
  478. GROUP_HorizOffset       EQU     BGUI_TB+323     ; I----
  479. GROUP_VertOffset        EQU     BGUI_TB+324     ; I----
  480. GROUP_LeftOffset        EQU     BGUI_TB+325     ; I----
  481. GROUP_TopOffset         EQU     BGUI_TB+326     ; I----
  482. GROUP_RightOffset       EQU     BGUI_TB+327     ; I----
  483. GROUP_BottomOffset      EQU     BGUI_TB+328     ; I----
  484. GROUP_Member            EQU     BGUI_TB+329     ; I----
  485. GROUP_SpaceObject       EQU     BGUI_TB+330     ; I----
  486. GROUP_BackFill          EQU     BGUI_TB+331     ; I----
  487. GROUP_EqualWidth        EQU     BGUI_TB+332     ; I----
  488. GROUP_EqualHeight       EQU     BGUI_TB+333     ; I----
  489. GROUP_Inverted          EQU     BGUI_TB+334     ; I----
  490.  
  491. ** BGUI_TB+335 until BGUI_TB+380 reserved.
  492.  
  493. ** Object layout attributes. **
  494. LGO_FixWidth            EQU     BGUI_TB+381
  495. LGO_FixHeight           EQU     BGUI_TB+382
  496. LGO_Weight              EQU     BGUI_TB+383
  497. LGO_FixMinWidth         EQU     BGUI_TB+384
  498. LGO_FixMinHeight        EQU     BGUI_TB+385
  499. LGO_Align               EQU     BGUI_TB+386
  500. LGO_NoAlign             EQU     BGUI_TB+387                     ; V38
  501.  
  502. ** BGUI_TB+388 until BGUI_TB+400 reserved.
  503.  
  504. ** Default object weight. **
  505. DEFAULT_WEIGHT  EQU     50
  506.  
  507. ** Group styles. **
  508. GRSTYLE_HORIZONTAL      EQU     0
  509. GRSTYLE_VERTICAL        EQU     1
  510.  
  511. ** New methods. **
  512. GRM_ADDMEMBER   EQU     BGUI_MB+81
  513.  
  514. ** Add a member to the group. **
  515.    STRUCTURE    grmAddMember,MethodID_SIZEOF       ; GRM_ADDMEMBER
  516.         APTR    grma_Member                     ; Object to add.
  517.         ULONG   grma_Attr                       ; First of LGO attributes.
  518.    LABEL        grmAddMember_SIZEOF
  519.  
  520. GRM_REMMEMBER   EQU     BGUI_MB+82
  521.  
  522. ** Remove a member from the group. **
  523.    STRUCTURE    grmRemMember,MethodID_SIZEOF       ; GRM_REMMEMBER
  524.         APTR    grmr_Member                     ; Object to remove.
  525.    LABEL        grmRemMember_SIZEOF
  526.  
  527. GRM_DIMENSIONS  EQU     BGUI_MB+83
  528.  
  529. ** Ask an object it's dimensions information. **
  530.    STRUCTURE    grmDimensions,MethodID_SIZEOF      ; GRM_DIMENSIONS
  531.         APTR    grmd_GInfo                      ; Can be NULL!
  532.         APTR    grmd_RPort                      ; Ready for calculations.
  533.         APTR    grmd_MinSizeWidth               ; Storage for dimensions.
  534.         APTR    grmd_MinSizeHeight              ; -
  535.         ULONG   grmd_Flags                      ; See below.
  536.    LABEL        grmDimensions_SIZEOF
  537.  
  538. ** Flags **
  539. GDIMF_NO_FRAME          EQU     $0001   ; Don't take frame width/height
  540.                                         ; into consideration.
  541.  
  542. GRM_ADDSPACEMEMBER      EQU     BGUI_MB+84
  543.  
  544. ** Add a weight controlled spacing member. **
  545.    STRUCTURE    grmAddSpaceMember,MethodID_SIZEOF  ; GRM_ADDSPACEMEMBER
  546.         ULONG   grms_Weight                     ; Object weight.
  547.    LABEL        grmAddSpaceMember_SIZEOF
  548.  
  549. GRM_INSERTMEMBER        EQU     BGUI_MB+85
  550.  
  551.    STRUCTURE    grmInsertMember,MethodID_SIZEOF    ; GRM_INSERTMEMBER
  552.         APTR    grmi_Member                     ; Object to insert
  553.         APTR    grmi_Pred                       ; Insert after this member
  554.         ULONG   grmi_Attr                       ; First of LGO attributes
  555.    LABEL        grmiInsertMember_SIZEOF
  556.  
  557. ** BGUI_MB+86 until BGUI_MB+120 reserved.
  558.  
  559. ******************************************************************************
  560. **
  561. **      "buttonclass" - BOOPSI button gadget.
  562. **
  563. **      GadTools style button gadget.
  564. **
  565. **      GA_Selected has been made gettable (OM_GET) for toggle-select
  566. **      buttons. (ISGNU)
  567. **
  568. BUTTON_ScaleMinWidth    EQU     BGUI_TB+401     ; PRIVATE!
  569. BUTTON_ScaleMinHeight   EQU     BGUI_TB+402     ; PRIVATE!
  570. BUTTON_Image            EQU     BGUI_TB+403     ; I----
  571. BUTTON_SelectedImage    EQU     BGUI_TB+404     ; I----
  572.  
  573. ** BGUI_TB+405 until BGUI_TB+480 reserved.
  574. ** BGUI_MB+121 until BGUI_MB+160 reserved.
  575.  
  576. ******************************************************************************
  577. **
  578. **      "checkboxclass" - BOOPSI checkbox gadget.
  579. **
  580. **      GadTools style checkbox gadget.
  581. **
  582. **      GA_Selected has been made gettable (OM_GET). (ISGNU)
  583. **
  584.  
  585. ** BGUI_TB+481 until BGUI_TB+560 reserved.
  586. ** BGUI_MB+161 until BGUI_MB+200 reserved.
  587.  
  588. ******************************************************************************
  589. **
  590. **      "cycleclass" - BOOPSI cycle gadget.
  591. **
  592. **      GadTools style cycle gadget.
  593. **
  594. CYC_Labels      EQU     BGUI_TB+561     ; I----
  595. CYC_Active      EQU     BGUI_TB+562     ; ISGNU
  596. CYC_Popup       EQU     BGUI_TB+563     ; I----
  597.  
  598. ** BGUI_TB+564 until BGUI_TB+640 reserved.
  599. ** BGUI_MB+201 until BGUI_MB+240 reserved.
  600.  
  601. ******************************************************************************
  602. **
  603. **      "infoclass" - BOOPSI information gadget.
  604. **
  605. **      Text gadget which supports different colors, text styles and
  606. **      text positioning.
  607. **
  608. INFO_TextFormat         EQU     BGUI_TB+641     ; IS--U
  609. INFO_Args               EQU     BGUI_TB+642     ; IS--U
  610. INFO_MinLines           EQU     BGUI_TB+643     ; I----
  611. INFO_FixTextWidth       EQU     BGUI_TB+644     ; I----
  612. INFO_HorizOffset        EQU     BGUI_TB+645     ; I----
  613. INFO_VertOffset         EQU     BGUI_TB+646     ; I----
  614.  
  615. ** Command sequences. **
  616. ISEQ_B  MACRO           ; Bold
  617.         dc.b    27,"b"
  618.         ENDM
  619. ISEQ_I  MACRO           ; Italics
  620.         dc.b    27,"i"
  621.         ENDM
  622. ISEQ_U  MACRO           ; Underlined
  623.         dc.b    27,"u"
  624.         ENDM
  625. ISEQ_N  MACRO           ; Normal
  626.         dc.b    27,"n"
  627.         ENDM
  628. ISEQ_C  MACRO           ; Centered
  629.         dc.b    27,"c"
  630.         ENDM
  631. ISEQ_R  MACRO           ; Right
  632.         dc.b    27,"r"
  633.         ENDM
  634. ISEQ_L  MACRO           ; Left
  635.         dc.b    27,"l"
  636.         ENDM
  637. ISEQ_TEXT       MACRO           ; TEXTPEN
  638.         dc.b    27,"d2"
  639.         ENDM
  640. ISEQ_SHINE      MACRO           ; SHINEPEN
  641.         dc.b    27,"d3"
  642.         ENDM
  643. ISEQ_SHADOW     MACRO           ; SHADOWPEN
  644.         dc.b    27,"d4"
  645.         ENDM
  646. ISEQ_FILL       MACRO           ; FILLPEN
  647.         dc.b    27,"d5"
  648.         ENDM
  649. ISEQ_FILLTEXT   MACRO           ; FILLTEXTPEN
  650.         dc.b    27,"d6"
  651.         ENDM
  652. ISEQ_HIGHLIGHT  MACRO           ; HIGHLIGHTPEN
  653.         dc.b    27,"d8"
  654.         ENDM
  655.  
  656. ** BGUI_TB+645 until BGUI_TB+720 reserved.
  657. ** BGUI_MB+241 until BGUI_MB+280 reserved.
  658.  
  659. ******************************************************************************
  660. **
  661. **      "listviewclass" - BOOPSI listview gadget.
  662. **
  663. **      GadTools style listview gadget.
  664. **
  665. LISTV_ResourceHook      EQU     BGUI_TB+721     ; I----
  666. LISTV_DisplayHook       EQU     BGUI_TB+722     ; I----
  667. LISTV_CompareHook       EQU     BGUI_TB+723     ; I----
  668. LISTV_Top               EQU     BGUI_TB+724     ; IS--U
  669. LISTV_ListFont          EQU     BGUI_TB+725     ; I-G--
  670. LISTV_ReadOnly          EQU     BGUI_TB+726     ; I----
  671. LISTV_MultiSelect       EQU     BGUI_TB+727     ; I----
  672. LISTV_EntryArray        EQU     BGUI_TB+728     ; I----
  673. LISTV_Select            EQU     BGUI_TB+729     ; -S--U
  674. LISTV_MakeVisible       EQU     BGUI_TB+730     ; -S--U
  675. LISTV_Entry             EQU     BGUI_TB+731     ; ---N-
  676. LISTV_SortEntryArray    EQU     BGUI_TB+732     ; I----
  677. LISTV_EntryNumber       EQU     BGUI_TB+733     ; ---N-
  678. LISTV_TitleHook         EQU     BGUI_TB+734     ; I----
  679. LISTV_LastClicked       EQU     BGUI_TB+735     ; --G--
  680. LISTV_ThinFrames        EQU     BGUI_TB+736     ; I----
  681. LISTV_LastClickedNum    EQU     BGUI_TB+737     ; I----           V38
  682. LISTV_NewPosition       EQU     BGUI_TB+738     ; ---N-           V38
  683. LISTV_NumEntries        EQU     BGUI_TB+739     ; --G--           V38
  684. LISTV_MinEntriesShown   EQU     BGUI_TB+740     ; I----           V38
  685.  
  686. ** BGUI_TB+741 until BGUI_TB+800 reserved.
  687.  
  688. **
  689. **      LISTV_Select magic numbers.
  690. **
  691. LISTV_Select_First      EQU     -1                              ; V38
  692. LISTV_Select_Last       EQU     -2                              ; V38
  693. LISTV_Select_Next       EQU     -3                              ; V38
  694. LISTV_Select_Previous   EQU     -4                              ; V38
  695. LISTV_Select_Top        EQU     -5                              ; V38
  696. LISTV_Select_Page_Up    EQU     -6                              ; V38
  697. LISTV_Select_Page_Down  EQU     -7                              ; V38
  698.  
  699. **
  700. **      The LISTV_ResourceHook is called as follows:
  701. **
  702. **              lea     hook,a0                 * 'STRUCTURE Hook' pointer
  703. **              lea     lv_object,a2            * Object pointer
  704. **              lea     lvResource,a1           * lvResource pointer
  705. **              jsr     hookFunc                * Call hook function
  706. **              tst.l   d0                      * return code in D0
  707. **
  708.    STRUCTURE    lvResource,0
  709.         UWORD   lvr_Command
  710.         APTR    lvr_Entry
  711.    LABEL        lvResource_SIZEOF
  712.  
  713. ** LISTV_ResourceHook commands. **
  714. LVRC_MAKE       EQU     1       ; Built the entry.
  715. LVRC_KILL       EQU     2       ; Kill the entry.
  716.  
  717. **
  718. **      The LISTV_DisplayHook and the LISTV_TitleHook are called as follows:
  719. **
  720. **              lea     hook,a0                 * 'STRUCTURE Hook' pointer
  721. **              lea     lv_object,a2            * Object pointer
  722. **              lea     lvRender,a1             * lvRender pointer
  723. **              jsr     hookFunc                * Call hook function
  724. **              tst.l   d0                      * return code in D0
  725. **
  726.    STRUCTURE    lvRender,0
  727.         APTR    lvren_RPort             ; RastPort to render in.
  728.         APTR    lvren_DrawInfo          ; All you need to render.
  729.         STRUCT  lvren_Bounds,ra_SIZEOF  ; Bounds to render in.
  730.         APTR    lvren_Entry             ; Entry to render.
  731.         UWORD   lvren_State             ; See below.
  732.         UWORD   lvren_Flags             ; None defined yet.
  733.    LABEL        lvRender_SIZEOF
  734.  
  735. ** Rendering states. **
  736. LVRS_NORMAL             EQU     0
  737. LVRS_SELECTED           EQU     1
  738. LVRS_NORMAL_DISABLED    EQU     2
  739. LVRS_SELECTED_DISABLED  EQU     3
  740.  
  741. **
  742. **      The LISTV_CompareHook is called as follows:
  743. **
  744. **              lea     hook,a0                 * 'STRUCTURE Hook' pointer
  745. **              lea     lv_object,a2            * Object pointer
  746. **              lea     lvCompare,a1            * lvCompare pointer
  747. **              jsr     hookFunc                * Call hook function
  748. **              tst.l   d0                      * return code in D0
  749. **
  750.    STRUCTURE    lvCompare,0
  751.         APTR    lvc_EntryA      ; First entry.
  752.         APTR    lvc_EntryB      ; Second entry.
  753.    LABEL        lvCompare_SIZEOF
  754.  
  755. ** New Methods. **
  756. LVM_ADDENTRIES  EQU     BGUI_MB+281
  757.  
  758. ** Add listview entries. **
  759.    STRUCTURE    lvmAddEntries,MethodID_SIZEOF      ; LVM_ADDENTRIES
  760.         APTR    lvma_GInfo                      ; GadgetInfo
  761.         APTR    lvma_Entries                    ; Entries to add.
  762.         ULONG   lvma_How                        ; How to add it.
  763.    LABEL        lvmAddEntries_SIZEOF
  764.  
  765. ** Where to add the entries. **
  766. LVAP_HEAD       EQU     1
  767. LVAP_TAIL       EQU     2
  768. LVAP_SORTED     EQU     3
  769.  
  770. LVM_ADDSINGLE   EQU     BGUI_MB+282
  771.  
  772. ** Add a single entry. **
  773.    STRUCTURE    lvmAddSingle,MethodID_SIZEOF       ; LVM_ADDSINGLE
  774.         APTR    lvms_GInfo                      ; GadgetInfo
  775.         APTR    lvms_Entry                      ; Entry to add.
  776.         ULONG   lvms_How                        ; See above.
  777.         ULONG   lvms_Flags                      ; See below.
  778.    LABEL        lvmAddSingle_SIZEOF
  779.  
  780. ** Flags. **
  781. LVASF_MAKEVISIBLE       EQU     $0001   ; Make entry visible.
  782. LVASF_SELECT            EQU     $0002   ; Select entry.
  783.  
  784. ** Clear the entire list. (Uses a lvmCommand structure as defined below.) **
  785. LVM_CLEAR       EQU     BGUI_MB+283
  786.  
  787. LVM_FIRSTENTRY  EQU     BGUI_MB+284
  788. LVM_LASTENTRY   EQU     BGUI_MB+285
  789. LVM_NEXTENTRY   EQU     BGUI_MB+286
  790. LVM_PREVENTRY   EQU     BGUI_MB+287
  791.  
  792. ** Get an entry. **
  793.    STRUCTURE    lvmGetEntry,MethodID_SIZEOF        ; Any of the above.
  794.         APTR    lvmg_Previous                   ; Previous entry.
  795.         ULONG   lvmg_Flags                      ; See below.
  796.    LABEL        lvmGetEntry_SIZEOF
  797.  
  798. LVGEF_SELECTED  EQU     $0001   ; Get selected entries.
  799.  
  800. LVM_REMENTRY    EQU     BGUI_MB+288
  801.  
  802. ** Remove an entry. **
  803.    STRUCTURE    lvmRemEntry,MethodID_SIZEOF        ; LVM_REMENTRY
  804.         APTR    lvmr_GInfo                      ; GadgetInfo
  805.         APTR    lvmr_Entry                      ; Entry to remove.
  806.    LABEL        lvmRemEntry_SIZEOF
  807.  
  808. LVM_REFRESH     EQU     BGUI_MB+289
  809. LVM_SORT        EQU     BGUI_MB+290
  810. LVM_LOCKLIST    EQU     BGUI_MB+291
  811. LVM_UNLOCKLIST  EQU     BGUI_MB+292
  812.  
  813. ** Refresh/Sort list. **
  814.    STRUCTURE    lvmCommand,MethodID_SIZEOF ; See above
  815.         APTR    lvmc_GInfo              ; GadgetInfo
  816.    LABEL        lvmCommand_SIZEOF
  817.  
  818. LVM_MOVE        EQU     BGUI_MB+293     ; V38
  819.  
  820. ** Move an entry in the list. **
  821.    STRUCTURE    lvmMove,MethodID_SIZEOF ; See above
  822.         APTR    lvmm_GInfo              ; GadgetInfo
  823.         APTR    lvmm_Entry              ; Entry to move or 0
  824.         ULONG   lvmm_Direction          ; Move direction
  825.    LABEL        lvmMove_SIZEOF
  826.  
  827. ** Move directions **
  828. LVMOVE_UP       EQU     0       ; Move entry up
  829. LVMOVE_DOWN     EQU     1       ; Move entry down
  830. LVMOVE_TOP      EQU     2       ; Move entry to the top
  831. LVMOVE_BOTTOM   EQU     3       ; Move entry to the bottom
  832.  
  833. ** BGUI_MB+294 until BGUI_MB+320 reserved.
  834.  
  835. ******************************************************************************
  836. **
  837. **      "progressclass" - BOOPSI progression gadget.
  838. **
  839. **      Progression indicator fuel guage.
  840. **
  841. PROGRESS_Min            EQU     BGUI_TB+801     ; IS---
  842. PROGRESS_Max            EQU     BGUI_TB+802     ; IS---
  843. PROGRESS_Done           EQU     BGUI_TB+803     ; ISGNU
  844. PROGRESS_Vertical       EQU     BGUI_TB+804     ; I----
  845. PROGRESS_Divisor        EQU     BGUI_TB+805     ; I----
  846.  
  847. ** BGUI_TB+806 until BGUI_TB+880 reserved.
  848. ** BGUI_MB+321 until BGUI_MB+360 reserved.
  849.  
  850. ******************************************************************************
  851. **
  852. **      "propclass" - BOOPSI proportional gadget.
  853. **
  854. **      GadTools style scroller gadget.
  855. **
  856. PGA_Arrows              EQU     BGUI_TB+881     ; I----
  857. PGA_ArrowSize           EQU     BGUI_TB+882     ; I----
  858. PGA_DontTarget          EQU     BGUI_TB+883     ; PRIVATE!
  859. PGA_ThinFrame           EQU     BGUI_TB+884     ; I----
  860. PGA_XenFrame            EQU     BGUI_TB+885     ; I----
  861.  
  862. ** BGUI_TB+886 until BGUI_TB+960 reserved.
  863. ** BGUI_MB+361 until BGUI_MB+400 reserved.
  864.  
  865. ******************************************************************************
  866. **
  867. **      "stringclass" - BOOPSI string gadget.
  868. **
  869. **      GadTools style string/integer gadget.
  870. **
  871. STRINGA_Tabbed          EQU     BGUI_TB+961     ; PRIVATE!
  872. STRINGA_ShiftTabbed     EQU     BGUI_TB+962     ; PRIVATE!
  873.  
  874. ** BGUI_TB+963 until BGUI_TB+1040 reserved.
  875. ** BGUI_MB+401 until BGUI_MB+440 reserved.
  876.  
  877. ******************************************************************************
  878. **
  879. **      RESERVED.
  880. **
  881. ** BGUI_TB+1041 until BGUI_TB+1120 reserved.
  882. ** BGUI_MB+441 until BGUI_MB+480 reserved.
  883.  
  884. ******************************************************************************
  885. **
  886. **      "pageclass" - BOOPSI paging gadget.
  887. **
  888. **      Gadget to handle pages of gadgets.
  889. **
  890. PAGE_Active             EQU     BGUI_TB+1121    ; ISGNU
  891. PAGE_Member             EQU     BGUI_TB+1122    ; I----
  892. PAGE_NoBufferRP         EQU     BGUI_TB+1123    ; I----
  893. PAGE_Inverted           EQU     BGUI_TB+1124    ; I----
  894.  
  895. ** BGUI_TB+1125 until BGUI_TB+1200 reserved.
  896. ** BGUI_MB+481 until BGUI_MB+520 reserved.
  897.  
  898. ******************************************************************************
  899. **
  900. **      "mxclass" - BOOPSI mx gadget.
  901. **
  902. **      GadTools style mx gadget.
  903. **
  904. MX_Labels               EQU     BGUI_TB+1201    ; I----
  905. MX_Active               EQU     BGUI_TB+1202    ; ISGNU
  906. MX_LabelPlace           EQU     BGUI_TB+1203    ; I----
  907. MX_DisableButton        EQU     BGUI_TB+1204    ; IS--U
  908. MX_EnableButton         EQU     BGUI_TB+1205    ; IS--U
  909. MX_TabsObject           EQU     BGUI_TB+1206    ; I----
  910. MX_TabsTextAttr         EQU     BGUI_TB+1207    ; I----
  911.  
  912. ** BGUI_TB+1208 until BGUI_TB+1280 reserved.
  913. ** BGUI_MB+521 until BGUI_MB+560 reserved.
  914.  
  915. ******************************************************************************
  916. **
  917. **      "sliderclass" - BOOPSI slider gadget.
  918. **
  919. **      GadTools style slider gadget.
  920. **
  921. SLIDER_Min              EQU     BGUI_TB+1281    ; I----
  922. SLIDER_Max              EQU     BGUI_TB+1282    ; I----
  923. SLIDER_Level            EQU     BGUI_TB+1283    ; ISGNU
  924. SLIDER_ThinFrame        EQU     BGUI_TB+1284    ; I----
  925. SLIDER_XenFrame         EQU     BGUI_TB+1285    ; I----
  926.  
  927. ** BGUI_TB+1286 until BGUI_TB+1360 reserved.
  928. ** BGUI_MB+561 until BGUI_MB+600 reserved.
  929.  
  930. ******************************************************************************
  931. **
  932. **      "indicatorclass" - BOOPSI indicator gadget.
  933. **
  934. **      Textual level indicator gadget.
  935. **
  936. INDIC_Min               EQU     BGUI_TB+1361    ; I----
  937. INDIC_Max               EQU     BGUI_TB+1362    ; I----
  938. INDIC_Level             EQU     BGUI_TB+1363    ; IS--U
  939. INDIC_FormatString      EQU     BGUI_TB+1364    ; I----
  940. INDIC_Justification     EQU     BGUI_TB+1365    ; I----
  941.  
  942. ** Justification **
  943. IDJ_LEFT                EQU     0
  944. IDJ_CENTER              EQU     1
  945. IDJ_RIGHT               EQU     2
  946.  
  947. ** BGUI_TB+1366 until BGUI_TB+1440 reserved.
  948.  
  949. ******************************************************************************
  950. **
  951. **      "externalclass" - BGUI external class interface.
  952. **
  953. EXT_Class               EQU     BGUI_TB+1441    ; I----
  954. EXT_ClassID             EQU     BGUI_TB+1442    ; I----
  955. EXT_MinWidth            EQU     BGUI_TB+1443    ; I----
  956. EXT_MinHeight           EQU     BGUI_TB+1444    ; I----
  957. EXT_TrackAttr           EQU     BGUI_TB+1445    ; I----
  958. EXT_Object              EQU     BGUI_TB+1446    ; --G--
  959. EXT_NoRebuild           EQU     BGUI_TB+1447    ; I----
  960.  
  961. ** BGUI_TB+1448 until BGUI_TB+1500 reserved.
  962.  
  963. *****************************************************************************
  964. **
  965. **      "seperatorclass" - BOOPSI seperator class.
  966. **
  967. SEP_Horiz               EQU     BGUI_TB+1501    * I----
  968. SEP_Title               EQU     BGUI_TB+1502    * I----
  969. SEP_Thin                EQU     BGUI_TB+1503    * I----
  970. SEP_Highlight           EQU     BGUI_TB+1504    * I----
  971. SEP_CenterTitle         EQU     BGUI_TB+1505    * I----
  972.  
  973. * BGUI_TB+1506 through BGUI_TB+1760 reserved.
  974.  
  975. ******************************************************************************
  976. **
  977. **      "windowclass" - BOOPSI window class.
  978. **
  979. **      This class creates and maintains an intuition window.
  980. **
  981. WINDOW_Position         EQU     BGUI_TB+1761    ; I----
  982. WINDOW_ScaleWidth       EQU     BGUI_TB+1762    ; I----
  983. WINDOW_ScaleHeight      EQU     BGUI_TB+1763    ; I----
  984. WINDOW_LockWidth        EQU     BGUI_TB+1764    ; I----
  985. WINDOW_LockHeight       EQU     BGUI_TB+1765    ; I----
  986. WINDOW_PosRelBox        EQU     BGUI_TB+1766    ; I----
  987. WINDOW_Bounds           EQU     BGUI_TB+1767    ; ISG--
  988. ** BGUI_TB+1768 until BGUI_TB+1770 reserved.
  989. WINDOW_DragBar          EQU     BGUI_TB+1771    ; I----
  990. WINDOW_SizeGadget       EQU     BGUI_TB+1772    ; I----
  991. WINDOW_CloseGadget      EQU     BGUI_TB+1773    ; I----
  992. WINDOW_DepthGadget      EQU     BGUI_TB+1774    ; I----
  993. WINDOW_SizeBottom       EQU     BGUI_TB+1775    ; I----
  994. WINDOW_SizeRight        EQU     BGUI_TB+1776    ; I----
  995. WINDOW_Activate         EQU     BGUI_TB+1777    ; I----
  996. WINDOW_RMBTrap          EQU     BGUI_TB+1778    ; I----
  997. WINDOW_SmartRefresh     EQU     BGUI_TB+1779    ; I----
  998. WINDOW_ReportMouse      EQU     BGUI_TB+1780    ; I----
  999. ** BGUI_TB+1781 until BGUI_TB+1790 reserved.
  1000. WINDOW_IDCMP            EQU     BGUI_TB+1791    ; I----
  1001. WINDOW_SharedPort       EQU     BGUI_TB+1792    ; I----
  1002. WINDOW_Title            EQU     BGUI_TB+1793    ; IS--U
  1003. WINDOW_ScreenTitle      EQU     BGUI_TB+1794    ; IS--U
  1004. WINDOW_MenuStrip        EQU     BGUI_TB+1795    ; I-G--
  1005. WINDOW_MasterGroup      EQU     BGUI_TB+1796    ; I----
  1006. WINDOW_Screen           EQU     BGUI_TB+1797    ; I----
  1007. WINDOW_PubScreenName    EQU     BGUI_TB+1798    ; I----
  1008. WINDOW_UserPort         EQU     BGUI_TB+1799    ; --G--
  1009. WINDOW_SigMask          EQU     BGUI_TB+1800    ; --G--
  1010. WINDOW_IDCMPHook        EQU     BGUI_TB+1801    ; I----
  1011. WINDOW_VerifyHook       EQU     BGUI_TB+1802    ; I----
  1012. WINDOW_IDCMPHookBits    EQU     BGUI_TB+1803    ; I----
  1013. WINDOW_VerifyHookBits   EQU     BGUI_TB+1804    ; I----
  1014. WINDOW_Font             EQU     BGUI_TB+1805    ; I----
  1015. WINDOW_FallBackFont     EQU     BGUI_TB+1806    ; I----
  1016. WINDOW_HelpFile         EQU     BGUI_TB+1807    ; IS---
  1017. WINDOW_HelpNode         EQU     BGUI_TB+1808    ; IS---
  1018. WINDOW_HelpLine         EQU     BGUI_TB+1809    ; IS---
  1019. WINDOW_AppWindow        EQU     BGUI_TB+1810    ; I----
  1020. WINDOW_AppMask          EQU     BGUI_TB+1811    ; --G--
  1021. WINDOW_UniqueID         EQU     BGUI_TB+1812    ; I----
  1022. WINDOW_Window           EQU     BGUI_TB+1813    ; --G--
  1023. WINDOW_HelpText         EQU     BGUI_TB+1814    ; IS---
  1024. WINDOW_NoBufferRP       EQU     BGUI_TB+1815    ; I----
  1025. WINDOW_AutoAspect       EQU     BGUI_TB+1816    ; I----
  1026.  
  1027. ** BGUI_TB+1817 until BGUI_TB+1860 reserved.
  1028.  
  1029. ** Possible window positions. **
  1030. POS_CENTERSCREEN        EQU     0       ; Center on the screen
  1031. POS_CENTERMOUSE         EQU     1       ; Center under the mouse
  1032. POS_TOPLEFT             EQU     2       ; Top-left of the screen
  1033.  
  1034. ** New methods **
  1035.  
  1036. WM_OPEN         EQU     BGUI_MB+601     ; Open the window
  1037. WM_CLOSE        EQU     BGUI_MB+602     ; Close the window
  1038. WM_SLEEP        EQU     BGUI_MB+603     ; Put the window to sleep
  1039. WM_WAKEUP       EQU     BGUI_MB+604     ; Wake the window up
  1040. WM_HANDLEIDCMP  EQU     BGUI_MB+605     ; Call the IDCMP handler
  1041.  
  1042. ** Pre-defined WM_HANDLEIDCMP return codes. **
  1043. WMHI_CLOSEWINDOW        EQU     $00010000       ; The close gadget was clicked
  1044. WMHI_NOMORE             EQU     $00020000       ; No more messages
  1045. WMHI_INACTIVE           EQU     $00030000       ; The window was de-activated
  1046. WMHI_ACTIVE             EQU     $00040000       ; The window was activated
  1047. WMHI_IGNORE             EQU     $FFFFFFFF       ; Like it say's: ignore
  1048.  
  1049. WM_GADGETKEY            EQU     BGUI_MB+606
  1050.  
  1051. ** Add a hotkey to a gadget. **
  1052.    STRUCTURE    wmGadgetKey,MethodID_SIZEOF        ; WM_GADGETKEY
  1053.         APTR    wmgk_Requester                  ; When used in a requester
  1054.         APTR    wmgk_Object                     ; Object to activate
  1055.         APTR    wmgk_Key                        ; Key that triggers activ.
  1056.    LABEL        wmGadgetKey_SIZEOF
  1057.  
  1058. WM_KEYACTIVE            EQU     BGUI_MB+607
  1059. WM_KEYINPUT             EQU     BGUI_MB+608
  1060.  
  1061. ** Send with the WM_KEYACTIVE and WM_KEYINPUT methods. **
  1062.    STRUCTURE    wmKeyInput,MethodID_SIZEOF ; WM_KEYACTIVE/WM_KEYINPUT
  1063.         APTR    wmki_GInfo              ; GadgetInfo
  1064.         APTR    wmki_IEvent             ; Input event
  1065.         ULONG   wmki_ID                 ; Storage for the object ID
  1066.         APTR    wmki_Key                ; Key that triggered activation.
  1067.    LABEL        wmKeyInput_SIZEOF
  1068.  
  1069. ** Possible WM_KEYACTIVE and WM_KEYINPUT return codes. **
  1070. WMKF_MEACTIVE           EQU     0       ; Object went active.
  1071. WMKF_CANCEL             EQU     $0001   ; Key activation canceled.
  1072. WMKF_VERIFY             EQU     $0002   ; Key activation confirmed
  1073. WMKF_ACTIVATE           EQU     $0004   ; ActivateGadget() object
  1074.  
  1075. WM_KEYINACTIVE          EQU     BGUI_MB+609
  1076.  
  1077. ** De-activate a key session. **
  1078.    STRUCTURE    wmKeyInActive,MethodID_SIZEOF      ; WM_KEYINACTIVE
  1079.         APTR    wmkia_GInfo                     ; GadgetInfo
  1080.    LABEL        wmKeyInActive_SIZEOF
  1081.  
  1082. WM_DISABLEMENU          EQU     BGUI_MB+610
  1083. WM_CHECKITEM            EQU     BGUI_MB+611
  1084.  
  1085. ** Disable/Enable a menu or Set/Clear a checkit item. **
  1086.    STRUCTURE    wmMenuAction,MethodID_SIZEOF       ; WM_DISABLEMENU/WM_CHECKITEM
  1087.         ULONG   wmma_MenuID                     ; Menu it's ID
  1088.         ULONG   wmma_Set                        ; TRUE = set, FALSE = clear
  1089.    LABEL        wmMenuAction_SIZEOF
  1090.  
  1091. WM_MENUDISABLED         EQU     BGUI_MB+612
  1092. WM_ITEMCHECKED          EQU     BGUI_MB+613
  1093.  
  1094.    STRUCTURE    wmMenuQuery,MethodID_SIZEOF        ; WM_MENUDISABLED/WM_ITEMCHECKED
  1095.         ULONG   wmmq_MenuID                     ; Menu it's ID
  1096.    LABEL        wmMenuQuery_SIZEOF
  1097.  
  1098. WM_TABCYCLE_ORDER       EQU     BGUI_MB+614
  1099.  
  1100. ** Set the tab-cycling order. **
  1101.    STRUCTURE    wmTabCycleOrder,MethodID_SIZEOF    ; WM_TABCYCLE_ORDER
  1102.         APTR    wtco_Object1
  1103.         ; APTR  wtco_Object2
  1104.         ; ...
  1105.         ; NULL
  1106.    LABEL        wmTabCycleOrder_SIZEOF
  1107.  
  1108. ** Obtain the app message. **
  1109. WM_GETAPPMSG            EQU     BGUI_MB+615
  1110.  
  1111. WM_ADDUPDATE            EQU     BGUI_MB+616
  1112.  
  1113. ** Add object to the update notification list. **
  1114.    STRUCTURE    wmAddUpdate,MethodID_SIZEOF        ; WM_ADDUPDATE
  1115.         ULONG   wmau_SourceID                   ; ID of source object.
  1116.         APTR    wmau_Target                     ; Target object.
  1117.         APTR    wmau_MapList                    ; Attribute map-list.
  1118.    LABEL        wmAddUpdate_SIZEOF
  1119.  
  1120. WM_REPORT_ID            EQU     BGUI_MB+617     ; V38
  1121.  
  1122. ** Report a return code from a IDCMP/Verify hook. **
  1123.    STRUCTURE    wmReportID,MethodID_SIZEOF      ; WM_REPORT_ID
  1124.         ULONG   wmri_ID                         ; ID to report.
  1125.         ULONG   wmri_Flags                      ; See below.
  1126.    LABEL        wmReportID_SIZEOF
  1127.  
  1128. ** Flags. **
  1129. WMRIF_DOUBLE_CLICK      EQU     $0001           ; Simulate double-click.
  1130.  
  1131. ** BGUI_MB+618 until BGUI_MB+660 reserved.
  1132.  
  1133. ******************************************************************************
  1134. **
  1135. **      "commodityclass" - BOOPSI commodity class.
  1136. **
  1137. COMM_Name               EQU     BGUI_TB+1861    ; I----
  1138. COMM_Title              EQU     BGUI_TB+1862    ; I----
  1139. COMM_Description        EQU     BGUI_TB+1863    ; I----
  1140. COMM_Unique             EQU     BGUI_TB+1864    ; I----
  1141. COMM_Notify             EQU     BGUI_TB+1865    ; I----
  1142. COMM_ShowHide           EQU     BGUI_TB+1866    ; I----
  1143. COMM_Priority           EQU     BGUI_TB+1867    ; I----
  1144. COMM_SigMask            EQU     BGUI_TB+1868    ; --G--
  1145. COMM_ErrorCode          EQU     BGUI_TB+1869    ; --G--
  1146.  
  1147. ** BGUI_TB+1870 until BGUI_TB+1940 reserved.
  1148.  
  1149. ** New Methods. **
  1150.  
  1151. CM_ADDHOTKEY            EQU     BGUI_MB+661
  1152.  
  1153. ** Add a hot-key to the broker. **
  1154.    STRUCTURE    cmAddHotkey,MethodID_SIZEOF        ; CM_ADDHOTKEY
  1155.         APTR    cah_InputDescription            ; Key input description.
  1156.         ULONG   cah_KeyID                       ; Key command ID.
  1157.         ULONG   cah_Flags                       ; See below.
  1158.    LABEL        cmAddHotkey_SIZEOF
  1159.  
  1160. ** Flags. **
  1161. CAHF_DISABLED   EQU     $0001   ; The key is added but won't work.
  1162.  
  1163. CM_REMHOTKEY            EQU     BGUI_MB+662     ; Remove a key.
  1164. CM_DISABLEHOTKEY        EQU     BGUI_MB+663     ; Disable a key.
  1165. CM_ENABLEHOTKEY         EQU     BGUI_MB+664     ; Enable a key.
  1166.  
  1167. ** Do a key command. **
  1168.    STRUCTURE    cmDoKeyCommand,MethodID_SIZEOF     ; See above.
  1169.         ULONG   cdkc_KeyID                      ; ID of the key.
  1170.    LABEL        cmDoKeyCommand_SIZEOF
  1171.  
  1172. CM_ENABLEBROKER         EQU     BGUI_MB+665     ; Enable broker.
  1173. CM_DISABLEBROKER        EQU     BGUI_MB+666     ; Disable broker.
  1174.  
  1175. CM_MSGINFO              EQU     BGUI_MB+667
  1176.  
  1177. ** Obtain info from a CxMsg. **
  1178.    STRUCTURE    cmMsgInfo,MethodID_SIZEOF  ; CM_MSGINFO
  1179.         ULONG   cmi_InfoType            ; Storage for CxMsgType() result.
  1180.         ULONG   cmi_InfoID              ; Storage for CxMsgID() result.
  1181.         ULONG   cmi_InfoData            ; Storage for CxMsgData() result.
  1182.    LABEL        cmMsgInfo_SIZEOF
  1183.  
  1184. ** Possible CM_MSGINFO return codes. **
  1185. CMMI_NOMORE     EQU     $FFFFFFFF       ; No more messages.
  1186.  
  1187. ** BGUI_MB+668 until BGUI_MB+700 reserved.
  1188.  
  1189. **
  1190. **      CM_ADDHOTKEY error codes obtainable using
  1191. **      the COMM_ErrorCode attribute.
  1192. **
  1193. CMERR_OK                EQU     0       ; OK. No problems.
  1194. CMERR_NO_MEMORY         EQU     1       ; Out of memory.
  1195. CMERR_KEYID_IN_USE      EQU     2       ; Key ID already used.
  1196. CMERR_KEY_CREATION      EQU     3       ; Key creation failure.
  1197. CMERR_CXOBJERROR        EQU     4       ; CxObjError() reported failure.
  1198.  
  1199. ******************************************************************************
  1200. **
  1201. **      "filereqclass.c" - BOOPSI Asl filerequester class.
  1202. **
  1203. FRQ_Drawer              EQU     BGUI_TB+1941    ; --G--
  1204. FRQ_File                EQU     BGUI_TB+1942    ; --G--
  1205. FRQ_Pattern             EQU     BGUI_TB+1943    ; --G--
  1206. FRQ_Path                EQU     BGUI_TB+1944    ; --G--
  1207. FRQ_Left                EQU     BGUI_TB+1945    ; --G--
  1208. FRQ_Top                 EQU     BGUI_TB+1946    ; --G--
  1209. FRQ_Width               EQU     BGUI_TB+1947    ; --G--
  1210. FRQ_Height              EQU     BGUI_TB+1948    ; --G--
  1211. **
  1212. **      In addition to the above defined attributes are all
  1213. **      ASL filerequester attributes ISG-U.
  1214. **
  1215.  
  1216. ** BGUI_TB+1949 until BGUI_TB+2020 reserved.
  1217.  
  1218. **
  1219. **      Error codes which the SetAttrs() and DoMethod()
  1220. **      call's can return.
  1221. **
  1222. FRQ_OK                  EQU     0       ; OK. No problems.
  1223. FRQ_CANCEL              EQU     1       ; The requester was cancelled.
  1224. FRQ_ERROR_NO_MEM        EQU     2       ; Out of memory.
  1225. FRQ_ERROR_NO_FREQ       EQU     3       ; Unable to allocate a requester.
  1226.  
  1227. ** New Methods **
  1228.  
  1229. FRM_DOREQUEST           EQU     BGUI_MB+701     ; Show Requester.
  1230.  
  1231. ** BGUI_MB+702 until BGUI_MB+740 reserved.
  1232.  
  1233.         ENDC    ; LIBRARIES_BGUI_I
  1234.